home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
EDITORS
/
VI
/
VIM
/
SOURCE
/
vim
/
todo
< prev
next >
Wrap
Text File
|
1992-08-04
|
7KB
|
130 lines
Known problems:
None at the moment!
Problems that will probably not be solved:
Setting the size of the window with ":win" does not always work as expected.
Amiga: When using quickfix with the Manx compiler we only get the first 25
errors. How do we get the rest?
Amiga: The ":cq" command does not always abort the Manx compiler. Why?
Further extentions:
In visual select mode: Inclusion or exclusion of char under cursor depends
on movement command. "vwd" and "dw" do the same.
Find out why macros of Stephen Riehm are working strange.
:s///p prints the line after a substitution.
When using the up/down cursor keys in insertmode keep the same column.
Make CTRL-R (insert register contents) also work in command line mode.
Updatescript() can be done faster with a string instead of a char.
With :args, when there is only one line, don't call wait_return().
Add arguments to ":args", like ":next".
When 'wrapscan' off give message "search hit BOTTOM without matching pattern".
When 'wrapscan' on give message "search hit BOTTOM, continuing at TOP".
Add \! to search patterns: matches string that does not match previous atom.
Screen updating is inefficient with CTRL-F and CTRL-B when there are long lines.
Add last inserted text to :display.
Make z<nr><CR> more useful: put ruler and command on bottom line, reserve
more space for command line and messages (less need for hitreturn).
Use 'backupdir' for all backup files? (Caughey)
Use CTRL-E and CTRL-Y in insert mode for scroll up/down?
When undone all changes reset the Changed flag.
Uppercase characters in ex commands can be made lowercase?
Add t_del, code for delete key (termcap 'kD') and maybe some other keys:
'kI' insert key, 'kL' delete line, etc.
CTRL-V > should move the block, not whole lines.
Filtering a block should only apply to the block, not to the whole lines. When
the number of lines is increased, add lines. When decreased, padd with
spaces or delete?
In out-of-memory situations: Free allocated space in undo (after asking).
With '#' and '*' commands: search whole words only (using \< and \>)?
8-bit codes between 0x80 and 0xa0 cannot be typed directly (mostly msdos
problem). Need more codes for delete key and more function keys. Use
2-byte code?
Insert octal numbers with CTRL-V o, hexadecimal with CTRL-V x and binary
with CTRL-V b.
List mappings: Once with and without ^ and ~ (meta keys)
If ':' hit after "hit return to continue" no screen redraw required.
Add option that tells which characters to display directly, e.g.
":set gr=32-126,140-244", others are displayed with ^ and ~ and +
Add option to show character value in octal, decimal, hex and screen code.
How does vi detect whether a filter has messed up the screen? Check source.
After ":w !command" a wait_return?
With 'p' command on last line: scroll screen up (also for terminals without
insert line command).
Amiga: ExpandWildCards in amiga.c: don't expand if there are no wildcards.
unix: Speedup wildcard expansion of "*", "~" and "$": do it internally, more
complicated things can still be done with the shell.
Only do wildcard expansion with 'wildchar' when entering a command that has a
file name as argument (:r :w :! :e :f :n)?
In regexp.c: "\^" after "\|" or "\(" is start of line, and "\$" before "\|"
and "\)" is end of line.
Remember the "last changed" time of the edited file and check it before
overwriting; another user may have changed it.
Support for command lines longer than 256 characters (for EXINIT).
Option for filter when reading/writing a file for compression or crypting.
Option to set time for emsg() sleep.
Make adjustmark() faster (sorted list of pointers? Hash list?)
Add "next tag" command for tags that have multiple hits.
Support static tags: first search for tags with current filename: "foo.c:bar",
then for global tags (without a filename).
History stack for . command?
With CTRL-^ command swap the two entries at the top of the file list. Put filename
in the list only if it is not already there???
Use insert/delete char when terminal supports it.
With undo with simple line delete/insert: optimize screen updating.
Optimize screen redraw for slow terminals.
"edit" option: when off changing the buffer is not possible.
Add "-d null" for editing from a script file without displaying.
MSDOS: search for _exrc in the directory where the binary is, instead
of using $VIM\_exrc.
In insert mode: Remember the characters that were removed with backspace and
re-insert them one at a time with <key1>, all together with <key2>.
Amiga: Add possibility to set a keymap. The code in amiga.c does not work yet.
Implement 'redraw' option.
Add possibility to put the value of an option into the text: "'lines'p
Add 'crown' option to 'Q' command: preserve indent of second line.
Unix: WildExpand: Without csh file name with embedded space will be split in two.
Add special code to 'sections' option to define something else but '{' or '}'
as the start of a section (e.g. one shiftwidth to the right).
Nopaste option: Mappings with non-printable characters are OK.
Add 'indent' option: Always use this amount of indent when starting a new line
and when formatting text.
Add option 'comment', initally "/*,*,*/,#", giving the characters at start of
a line that should be left alone by the internal formatting.
Add 'scrolloff': scroll when cursor is less then 'scrolloff' lines from top/bottom.
Add option to switch off ignoring braces inside quotes for "%" command??
Use pipes for filtering on unix.
Allow for +command and -option on any position in argv[].
With CTRL-O commands in insert mode: Allow to go to after last char in line.
Add commands like ]] and [[ that do not include the line jumped to.
From Elvis:
fontchanges recognized "\\fB" etc.
:color command
:if and friends, conditional statements
Change cursor shape in command/insert mode.
Far future extentions:
MSdos: use extended or expanded memory.
Use disk swap file when editing very large files.
When executing macro's: Save each line for undo only once.
Smart cut/paste: recognize words and adjust spaces before/after them.
Add 'notwsuffixes' option: suffixes for files where 'tw' should be 0.
Keyword completion: first look in the file for a match, then in a dictionary.
Support mouse control.
Support multiple windows (like xvi or emacs)
Option verbose; when on keep the screen uptodate, when off only redisplay when
input needed.
Remember message line for redraw. Integrate the command line in updateScreen().
Mode to keep text formatted while inserting/deleting.
Mode to keep C-code formatted (sort of on-line indent). Use colors for
keywords, comments, etc.
Korn-shell like command line editing (like editing a single line with vi). Use
:cmap! for mappings.